System and method of generating a route across an electronic map

ABSTRACT

A computerised method of generating a route  1000  from an origin position F 1  to a destination position  706  across an electronic map  700  comprising a plurality of vectors representing segments of a navigable route in the area covered by the electronic map  700,  the method comprising: (1) obtaining delay data indicating delays on vectors within the area covered by the electronic map  700;  (2) calculating a first portion  1002  of a route from origin position toward the destination position  706  using a first routing method up to a predetermined threshold  1006  from the origin position F 1,  such that the first routing method uses the delay data so that the first portion  1002  of the route takes into account delays; and (3) calculating a second portion  1004  of the route beyond the predetermined threshold  1006  to the destination position  706  using a second routing method to further calculate the route to the destination position  1006.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation of International Application No.PCT/EP2011/053565 filed Mar. 9, 2011, and designating the United States,and which claims priority from U.S. Provisional Application No.61/326,278 filed Apr. 21, 2010. The entire contents of both applicationsare incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to a computerised method of generating aroute and associated systems. Typically, the route is generated acrossan electronic map from an origin position to a destination position.Further, typically the method and systems will generate route data. Themethod may particularly find use, but not exclusively, in a navigationdevice and in particular a Portable Navigation Device (PND).

BACKGROUND OF THE INVENTION

Route planning devices (often referred to as Satellite Nav.'s, PortableNavigation Devices (PND's) or similar) together with web sitesaccessible across the World Wide Web (WWW) such ashttp://routes.tomtom.com/ are well known and allow a user thereof toplan a route between two points. Such technology may be referred togenerically as electronic route planning or just route planning.

Map data (ie electronic maps) for such electronic route planning comesfrom specialist map vendors such as Tele Atlas NV. When performed on aPND such route planning typically uses position data from a GPS system.However, other applications may allow a user to input his/her locationor other point to be considered for routing planning purposes.

Such map data comprises a plurality of roads (and other navigable paths)which can be described as lines—i.e. vectors or road segments (e.g.start point, end point, direction for a road, with an entire road beingmade up of many hundreds of such segments, each uniquely defined bystart point/end point direction parameters). Such vectors connect nodeswhich represent intersections between vectors and typically represent ajunction in the road represented by the vector.

An electronic map is then a set of such road vectors, nodes, dataassociated with each vector and node (speed limit; travel direction,etc.) plus points of interest (POIs), plus road names, plus othergeographic features like park boundaries, river boundaries, etc., all ofwhich are defined in terms of vectors. All map features (e.g. roadvectors, POIs etc.) are typically defined in a co-ordinate system thatcorresponds with or relates to the GPS co-ordinate system, enabling adevice's position as determined through a GPS system to be located ontothe relevant road shown in an electronic map and for a route, which aimsto be optimal minimising a selected cost function, to be planned to adestination.

The data providing such electronic maps can be extensive. It is knownfor electronic maps to cover areas having in excess of 120,000,000vectors and an example of such map data would be a map covering the areaof Europe and Russia. As such, planning a route using such map data iscomplex and can be time consuming. Also, it is known that such routeplanning is a trade-off between accuracy and time.

Prior art which has considered ideas at improving the speed at whichrouting can occur includes U.S. Pat. No. 6,636,800 which discussesrefinements to the A* best-first search strategy suitable for muchsmaller map sizes such as the highway road network of Western Europe(having roughly 400,000 vectors).

SUMMARY OF THE INVENTION

According to a first aspect of the invention there is provided acomputerised method of generating a route from an origin position to adestination position across an electronic map comprising a plurality ofvectors representing segments of a navigable route in the area coveredby the electronic map, the method comprising:

-   -   1) obtaining delay data indicating delays on vectors within an        area covered by the electronic map;    -   2) calculating a first portion of a route, from an origin        position toward the destination position, using a first routing        method up to a predetermined threshold from the origin position,        such that the first routing method uses the delay data so that        the first portion of the route takes into account delays; and    -   3) calculating a second portion of the route beyond the        predetermined threshold to the destination position using a        second routing method to further calculate the route to the        destination position.

Such a method is believed advantageous as it takes into considerationdelays around the vehicle and as such may provide more accurate routestypically producing routes which route around traffic delays. However,the method should also reduce the time taken to generate a route, whenrun on the same hardware, when compared to prior art routing techniqueswhich take into account delay data.

Typically, the delay data will indicate delays caused by trafficincidents, such as accidents or the like. Such data may be thought of asdelay data. However, the delay data will typically include data ondelays whatever the cause. The skilled person will appreciate thatdelays may be caused by any number of reasons, such as road closures;weather; events such as concerts, fayres, etc.; sporting events; roadworks; or the like.

It is known to allow users' of electronic maps to note and subsequentlyupload to the map provider errors within the electronic map. As such,the accuracy of the electronic map may be improved through the actionsof the community of users. TomTom™ provides such a system under thetrade mark Map Share™. As such, users of such electronic maps can chooseto utilise errors which have been notified by the community of users andsuch errors, or rather fixes to the errors, are downloadable andsubsequently useable with the electronic map. In the context of thisaspect of the invention the delay data may also include fixes to errorswithin the electronic map across which the route is being generated.

The method may generate route data as an output thereof. The route datamay provide details of the route across the electronic map.

It is known that traffic incidents typically have a finite life-span ofa few tens of minutes. Research has indicated that in a very largemajority of the cases the life span of a traffic incident may not exceed30 minutes. As such, considering traffic incidents beyond the distancethat can be driven in the life span of a traffic incident may beunwarranted since the traffic incident may have dispersed by the timethat a driver arrives at the location of the traffic incident.

Accordingly, the method may set the predetermined threshold for whichthe first routing method is used as the distance that can be travelledwithin a predetermined driving time. The predetermined driving time maybe selected to be roughly 40 minutes. Alternatively, the predetermineddriving time may be roughly any of the following number of minutes: 15,20, 25, 30, 35, 45, 50, 60 or more. In setting the predeterminedthreshold the method may consider the expected driving speed that can beexpected at that time; ie the predetermined threshold is set at adistance from the origin position that can be expected to be reached inthe actual driving conditions (ie at an actual expected driving speed).The expected driving speed that can be expected at that time may bethought of as first driving speed.

The predetermined threshold may be varied according to the area to whichthe electronic map relates. For example, the predetermined threshold maybe varied according to the country, whether the area is urban, rural orthe like, etc.

Embodiments of the invention may limit the delay data that is consideredto an area surrounding the origin position. Such a method is convenientsince it reduces the amount of data that is considered which bringsabout advantages in relation to storage of that data, reduction inbandwidth, faster processing, etc.

The area surrounding the origin position may be a shape that can betessellated, such as a rectangle, square or the like. Such a shape isadvantageous since it can make intersection with traffic incidents ofsome embodiments of the invention simpler.

Before determining the shape that can be tessellated, the method maydetermine an alternative shape such as an ellipse, circle or the like.

Should an ellipse be used then it may have the origin position as one ofthe focuses of the ellipse. The method may subsequently fit the shapethat can be tessellated around the ellipse.

The method may set the area surrounding the origin position based uponthe distance that can be driven in a predetermined time which may bethought of as a second driving speed. The method may use a set speed tomake this determination, which may be the speed that a driver could beexpected to drive given a clear road. That is the method may set thesize of the area based upon, what may be thought of as, best-casedriving conditions.

Therefore, some embodiments may use an actual expected driving speed todetermine the predetermined threshold at which the method switches fromthe first routing method to the second routing method whereas they mightuse a best case scenario driving speed to determine the area surroundingthe origin over which delay data is considered. Such embodiments areconvenient since the predetermine threshold should always be within thearea for which delay data is available, but the method has significantlyreduced the amount of delay data that is considered.

As discussed above, the first driving speed is typically less than orequal to the second driving speed. In some embodiments, the firstdriving speed is the driving speed that can be expected given thecurrent driving conditions and the second driving speed is the drivingspeed that can be expected given clear driving conditions.

The predetermined driving time may be selected to be roughly 40 minutes.Alternatively, the predetermined driving time may be roughly any of thefollowing number of minutes: 15, 20, 25, 30, 35, 45, 50, 60 or more.Embodiments of the invention may advantageously use the smallest valuethat covers the life-span of almost all traffic incidents or largemajority of them since setting the predetermined threshold to too high avalue may typically reduce, and possible negate, the advantages of themethod and mean that a greater amount of traffic data than is necessaryis processed.

The method may use a boundary of a predetermined shape to determine thepredetermined threshold. The predetermined shape may be an ellipse.Should an ellipse be used then it may be arranged such that the originposition, which may be a current position of a vehicle, is at a firstfocus of the ellipse. The method may arrange the dimensions of theellipse such that the distance from the first focus, through the secondfocus, to the boundary of the ellipse is equal in distance to thedistance that a vehicle could travel in the predetermined driving time.Embodiments, using of an ellipse are believed advantageous since anellipse provides a boundary which conveniently represents vectors thatshould be considered for traffic consideration; more focus may be givenahead of the origin position than to the sides where a routes is lesslikely to be generated.

Subsequently to generating the ellipse, the method may fit a shape thatcan be tessellated, such as a rectangle around the ellipse. Other shapesmay be possible, such as a square, or the like.

The method may form shapes that can be tessellated, for examplerectangles, around areas covered by traffic incidents and subsequently,the method may determine whether a rectangle around a traffic incidentintersects the area around the origin position for which delay data isconsidered. The method may utilise delay data relating to any incidentin which an intersection occurs. Such a method is convenient indetermining whether delay data should be considered.

The method may represent the electronic map as a Directed Acyclic Graph(DAG). Further, the method may use a search method to explore theelectronic map and calculate the first portion of the route. The searchmethod may be a best-first search method, such as the A* method. Inalternative embodiments, the search method may a method such asDijkstra's method, or the A1 or A2 methods which preceded the A* method.The A* method is currently believed to be the preferred method ofcalculating the first portion of the route as it is believed to providethe optimal solution to the determining the lowest cost route between anorigin position and a destination position and as such can be used tocalculate the route whilst taking into consideration the delay data.

The method may use routing acceleration data to calculate the secondportion of the route. Typically the routing acceleration data isassociated with the electronic map across which the route is beinggenerated and may indicate which vectors of the electronic map may formpart of the lowest cost route to other portions of the electronic map.One example of such routing acceleration data is described in detail inpatent application PCT/EP2010/059947 in the name of TomTom InternationalBV (WO 2011/004029) and the content thereof is hereby incorporated byreference. An advantage of using such routing acceleration data is theroute can be generated in significantly less time since the routingacceleration data specifies which vectors form part of the lowest costroute according to a pre-determined cost function. However, because therouting acceleration data is pre-generated it does not take into accountvarying information such as traffic incidents which alter the costfunction (typically driving time) for a given vector. It is believedthat it is acceptable not to use delay data beyond the predeterminedthreshold since traffic incidents will have a reduced impact at thisdistance from the origin position.

Some embodiments of the invention may re-calculate the route ifparameters used to generate the original route should change. Forexample, any of the following may change: delay data; vehicle deviatesfrom the generated route; user alters parameters used to generate route(for example user may indicate that motorways should no longer be usedwhen the generated route used motorways); the traffic configurationchange around the route; a user experiences delay along the route(typically caused by slower than expected driving, etc.) or the like.

According to a second aspect of the invention there is provided anavigation device which is arranged to generate a route from an originposition to a destination position across an electronic map accessiblethereby and comprising a plurality of vectors representing segments of anavigable route in the area covered by the electronic map wherein thedevice is arranged to:

-   -   1) obtain delay data indicating delays on vectors within an area        covered by the electronic map;    -   2) calculate a first portion of a route from an origin position        toward the destination position using a first routing method up        to a predetermined threshold from the origin position wherein        the first routing method uses the delay data so that the first        portion of the route takes into account delays identified by the        delay data; and    -   3) calculate a second portion of the route beyond the        predetermined threshold to the destination position using a        second routing method to further calculate the route to the        destination position.

The navigation device may be a Portable Navigation Device (PND).However, the navigation device may also be any other device which isarranged to process an electronic map and generate a route across thatelectronic map. For instance the navigation may be any of the following:a telephone; a PDA (Personal Digital Assistant); a tablet computer, suchas an iPad™; a server accessible across a network, such as a Wide AreaNetwork (WAN) exemplified by the Internet; a notebook computer; anetbook computer; a PC and/or MAC; a television; a games console; or thelike.

According to a third aspect of the invention there is provided a systemarranged to generate a route from an origin position to a destinationposition across an electronic map comprising a plurality of vectorsrepresenting segments of a navigable route in the area covered by theelectronic map, wherein the system comprises:

-   -   at least one server arranged to generate delay data indicating        delays on vectors within an area covered by the electronic map;        and    -   at least one navigation device arranged to receive the delay        data and to:    -   1) calculate a first portion of a route from the origin position        toward the destination position using a first routing method up        to a predetermined threshold from the origin position wherein        the first routing method uses the delay data so that the first        portion of the route takes into account delays identified by the        delay data; and    -   2) calculate a second portion of the route beyond the        predetermined threshold to the destination position using a        second routing method to further calculate the route to the        destination position.

According to a fourth aspect of the invention there is provided amachine readable medium containing instructions which when read onto atleast one machine cause that machine to perform the method of the firstaspect of the invention.

According to a fifth aspect of the invention there is provided a machinereadable medium containing instructions which when read onto at leastone machine cause that machine to perform as the navigation device ofthe second aspect of the invention.

According to a sixth aspect of the invention there is provided a machinereadable medium containing instructions which when read onto at leastone machine cause that machine to perform as at least part of the systemof the third aspect of the invention.

Any feature described in relation to one aspect of the invention may beused, mutatis mutandis with any other aspect of the invention.

In any of the above aspects of the invention the machine readable mediummay comprise any of the following: a floppy disk, a CD ROM, a DVDROM/RAM (including a −R/−RW and +R/+RW), a hard drive, a memory(including a USB memory key, an SD card, a Memorystick™, a compact flashcard, or the like), a tape, any other form of magneto optical storage, atransmitted signal (including an Internet download, an FTP transfer,etc), a wire, or any other suitable medium.

The skilled person will appreciate that embodiments of the invention maybe provided in software, firmware, hardware or any combination thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

There now follows by way of example only a detailed description of anembodiment of the present invention with reference to the accompanyingdrawings in which:

FIG. 1 is a schematic illustration of an exemplary part of a GlobalPositioning System (GPS) usable by a navigation device;

FIG. 2 is a schematic illustration of electronic components of aPortable Navigation Device (PND) or any other suitable navigationdevice;

FIG. 3 is a schematic diagram of an arrangement of mounting and/ordocking a navigation device;

FIG. 4 is a schematic representation of an architectural stack employedby the navigation device of FIG. 2;

FIG. 5 shows an embodiment of a method of creating routing accelerationdata;

FIG. 6 shows an example of routing acceleration data utilised by someembodiments of the invention described herein;

FIG. 7 illustrates a predetermined threshold from an origin position asutilised in some embodiments of the invention;

FIG. 8 illustrates how delay data is utilised in some embodiments of theinvention;

FIG. 9 illustrates how the predetermined threshold may be varied in someembodiments of the invention;

FIG. 10 illustrates how embodiments of the invention may switch betweena first routing technique and a second routing technique;

FIG. 11 illustrates how some embodiments may illustrate the existence oftraffic incidents;

FIGS. 12 and 13 illustrate how some embodiments of the invention updatethe calculated route whilst driving is occurring; and

FIG. 14 shows a flow chart outlining generation of a route according toan embodiment of the invention.

DETAILED DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically shows a Global Positioning System (GPS) which is asatellite-radio based navigation system which may be utilised todetermine continuous position, velocity, time, and in some instancesdirection information for an unlimited number of users. Formerly knownas NAVSTAR, the GPS incorporates a plurality of satellites which orbitthe earth in extremely precise orbits. Based on these precise orbits,GPS satellites can relay their location, as GPS data, to any number ofreceiving units. However, it will be understood that Global Positioningsystems could be used, such as GLOSNASS, the European Galileopositioning system, COMPASS positioning system or IRNSS (Indian RegionalNavigational Satellite System).

The GPS system is implemented when a device, specially equipped toreceive GPS data, begins scanning radio frequencies for GPS satellitesignals. Upon receiving a radio signal from a GPS satellite, the devicedetermines the precise location of that satellite via one of a pluralityof different conventional methods. The device will continue scanning, inmost instances, for signals until it has acquired at least threedifferent satellite signals (noting that position is not normally, butcan be determined, with only two signals using other triangulationtechniques). Implementing geometric triangulation, the receiver utilizesthe three known positions to determine its own two-dimensional positionrelative to the satellites. This can be done in a known manner.Additionally, acquiring a fourth satellite signal allows the receivingdevice to calculate its three dimensional position by the samegeometrical calculation in a known manner. The position and velocitydata can be updated in real time on a continuous basis by an unlimitednumber of users.

As shown in FIG. 1, the GPS system 100 comprises a plurality ofsatellites 102 orbiting about the earth 104. A GPS receiver 106 receivesGPS data as spread spectrum GPS satellite data signals 108 from a numberof the plurality of satellites 102. The spread spectrum data signals 108are continuously transmitted from each satellite 102, the spreadspectrum data signals 108 transmitted each comprise a data streamincluding information identifying a particular satellite 102 from whichthe data stream originates. The GPS receiver 106 generally requiresspread spectrum data signals 108 from at least three satellites 102 inorder to be able to calculate a two-dimensional position. Receipt of afourth spread spectrum data signal enables the GPS receiver 106 tocalculate, using a known technique, a three-dimensional position. TheGPS receiver 106 then generates position data which provides the derivedco-ordinate information.

Thus, a GPS system allows a user of a device having a GPS receiver 106to determine his/her position on the planet earth to within a fewmetres. In order to make use of this information it has become commonpractice to rely on electronic maps which allow the user's position,provided by the position data, to be shown thereon. Such electronic mapsare exemplified by providers such as TeleAtlas(http://www.teleatlas.com). The skilled person will appreciate that theposition data need to not be generated from a GPS system and that othersources, or combination of sources, are equally possible.

Such position data could, for example, be derived from position dataderived from mobile phone operation, data received at toll barriers,data obtained from induction loops embedded in roads, data obtained fromnumber plate recognition system, data obtained from accelerometers, orthe like, associated with a vehicle or any other suitable data source(or combinations of data sources).

Not only do such electronic maps allow a user's position to be shownthereon using a GPS system (or by other means) but they allow a user toplan routes for journeys and the like (routing purposes). In order forthis route planning to occur, the electronic map is processed by anavigation device, which may be provided by a general computing device.

Specific examples of such navigation devices include Satellitenavigation devices (Sat. Nav) which are convenient to refer to asPortable Navigation Devices (PNDs). It should be remembered, however,that the teachings of embodiments of the present invention are notlimited to PNDs but are instead universally applicable to any type ofprocessing device that is configured to process electronic maps,generally so as to provide route planning and navigation functionality.It follows therefore that in the context of embodiments of the presentinvention, a navigation device is intended to include (withoutlimitation) any type of route planning and navigation device,irrespective of whether that device is embodied as a PND, a vehicle suchas an automobile, a portable computing resource, for example a portablepersonal computer (PC), a mobile telephone or a Personal DigitalAssistant (PDA) executing route planning and navigation software or aserver, or other computing device, providing such functionality across anetwork.

An example of such a navigation device in the form of a PND is shown inFIG. 2 and it should be noted that the block diagram of the navigationdevice is not inclusive of all components of the navigation device, butis only representative of many example components. The navigation device200 is located within a housing (not shown). The navigation device 200includes processing circuitry comprising, for example, the processor 202mentioned above, the processor 202 being coupled to an input device 204and a display device, for example a display screen 206. Althoughreference is made here to the input device 204 in the singular, theskilled person should appreciate that the input device 204 representsany number of input devices, including a keyboard device, voice inputdevice, touch panel and/or any other known input device utilised toinput information. Likewise, the display screen 206 can include any typeof display screen such as a Liquid Crystal Display (LCD), for example.

In the navigation device 200, the processor 202 is operatively connectedto and capable of receiving input information from input device 204 viaa connection 210, and operatively connected to at least one of thedisplay screen 206 and the output device 208, via respective outputconnections 212, to output information thereto. The navigation device200 may include an output device 208, for example an audible outputdevice (e.g. a loudspeaker). As the output device 208 can produceaudible information for a user of the navigation device 200, it shouldequally be understood that input device 204 can include a microphone andsoftware for receiving input voice commands as well. Further, thenavigation device 200 can also include any additional input device 204and/or any additional output device, such as audio input/output devicesfor example.

The processor 202 is operatively connected to memory 214 via connection216 and is further adapted to receive/send information from/toinput/output (I/O) ports 218 via connection 220, wherein the I/O port218 is connectible to an I/O device 222 external to the navigationdevice 200. The external I/O device 222 may include, but is not limitedto an external listening device, such as an earpiece for example. Theconnection to I/O device 222 can further be a wired or wirelessconnection to any other external device such as a car stereo unit forhands-free operation and/or for voice activated operation for example,for connection to an earpiece or headphones, and/or for connection to amobile telephone for example, wherein the mobile telephone connectioncan be used to establish a data connection between the navigation device200 and the Internet or any other network for example, and/or toestablish a connection to a server via the Internet or some othernetwork for example.

The memory 214 of the navigation device 200 comprises a portion ofnon-volatile memory (for example to store program code) and a portion ofvolatile memory (for example to store data as the program code isexecuted). The navigation device also comprises a port 228, whichcommunicates with the processor 202 via connection 230, to allow aremovable memory card (commonly referred to as a card) to be added tothe device 200. In the embodiment being described the port is arrangedto allow an SD (Secure Digital) card to be added. In other embodiments,the port may allow other formats of memory to be connected (such asCompact Flash (CF) cards, Memory Sticks™, xD memory cards, USB(Universal Serial Bus) Flash drives, MMC (MultiMedia) cards, SmartMediacards, Microdrives, or the like).

FIG. 2 further illustrates an operative connection between the processor202 and an antenna/receiver 224 via connection 226, wherein theantenna/receiver 224 can be a GPS antenna/receiver for example and assuch would function as the GPS receiver 106 of FIG. 1. It should beunderstood that the antenna and receiver designated by reference numeral224 are combined schematically for illustration, but that the antennaand receiver may be separately located components, and that the antennamay be a GPS patch antenna or helical antenna for example.

In addition, the portable or handheld navigation device 200 of FIG. 3can be connected or “docked” in a known manner to a vehicle such as abicycle, a motorbike, a car or a boat for example. Such a navigationdevice 200 is then removable from the docked location for portable orhandheld navigation use. Indeed, in other embodiments, the device 200may be arranged to be handheld to allow for navigation of a user.

Referring to FIG. 3, the navigation device 200 may be a unit thatincludes the integrated input and display device 206 and the othercomponents of FIG. 2 (including, but not limited to, the internal GPSreceiver 224, the processor 202, a power supply (not shown), memorysystems 214, etc.).

The navigation device 200 may sit on an arm 252, which itself may besecured to a vehicle dashboard/window/etc. using a suction cup 254. Thisarm 252 is one example of a docking station to which the navigationdevice 200 can be docked. The navigation device 200 can be docked orotherwise connected to the arm 252 of the docking station by snapconnecting the navigation device 200 to the arm 252 for example. Thenavigation device 200 may then be rotatable on the arm 252. To releasethe connection between the navigation device 200 and the dockingstation, a button (not shown) on the navigation device 200 may bepressed, for example. Other equally suitable arrangements for couplingand decoupling the navigation device 200 to a docking station are wellknown to persons of ordinary skill in the art.

Turning to FIG. 4, the processor 202 and memory 214 cooperate to supporta BIOS (Basic Input/Output System) 282 that functions as an interfacebetween functional hardware components 280 of the navigation device 200and the software executed by the device. The processor 202 then loads anoperating system 284 from the memory 214, which provides an environmentin which application software 286 (implementing some or all of thedescribed route planning and navigation functionality) can run. Theapplication software 286 provides an operational environment includingthe Graphical User Interface (GUI) that supports core functions of thenavigation device, for example map viewing, route planning, navigationfunctions and any other functions associated therewith. In this respect,part of the application software 286 comprises a view generation module288.

In the embodiment being described, the processor 202 of the navigationdevice is programmed to receive GPS data received by the antenna 224and, from time to time, to store that GPS data, together with a timestamp of when the GPS data was received, within the memory 214 to buildup a series of positions of the navigation device; ie position data.Each data record so-stored may be thought of as a GPS fix; ie it is afix of the location of the navigation device and comprises a latitude, alongitude, a time stamp and an accuracy report.

Electronic maps typically cover a geographic area and comprise datawhich is specially designed to be used by route guidance algorithms,typically using position data derived from the GPS system. For example,roads can be described as lines—i.e. vectors (e.g. start point, endpoint, direction for a road, with an entire road being made up of manyhundreds of such vectors, each uniquely defined by start point/end pointdirection parameters), with nodes occurring between such vectors. Anelectronic map is then a set of such road vectors (ie a plurality ofvectors), data associated with each vector (speed limit; traveldirection, etc.) plus points of interest (POIs), plus road names, plusother geographic features like park boundaries, river boundaries, etc.,all of which are defined in terms of vectors. Electronic map features(e.g. road vectors, POIs etc.) are typically defined in a co-ordinatesystem that corresponds with or relates to the GPS co-ordinate system,enabling a device's position as determined through a GPS system to belocated onto the relevant road shown in an electronic map and for anoptimal route to be planned to a destination.

There are well know routing methods which allow a route be plannedacross an electronic map and which can be used by a user to move betweenat least two positions (an origin position and a destination position).Such algorithms include Dijkstra's method and the refinement thereto,the A* method. These will be well known to the skilled person.

The skilled person will appreciate that wide applicability of routingmethods which are commonly used in navigation devices. However, whilstmethods such as A* calculate a route across an electronic map they maybe slower than is desired. As such, what may be thought of as, routingacceleration data may be added to the electronic map, or at least toelectronic files which can be utilised in association with theelectronic map. One example of such routing acceleration data isdescribed in detail in patent application PCT/EP2010/059947 in the nameof TomTom International BV (WO 2011/0040291) and the content thereof ishereby incorporated by reference.

However, for ease of reference, the method outlined in PCT/EP2010/059947is briefly described with reference to FIG. 5. In order to generate therouting acceleration data the electronic map is pre-processed. Typicallythe pre-processing is performed before the data providing the electronicmap is used regardless of whether the map data is to be used on a website or on a device such as a PND. As such, the pre-processing step isoften referred to as a server side process.

Because the pre-processing is performed for a specific electronic mapthe routing acceleration data that is generated is typically useableonly for that electronic map. The skilled person will appreciate that ifthe routing acceleration data is used for a wholly different electronicmap then the routes that are generated will not be the lowest costroute. Moreover, the skilled person will appreciate that differentversions of an electronic map will exist as the physical environmentwhich is recorded within the electronic map changes over time. As such,new versions are created to reflect the changing environment and also tomake corrections to earlier versions of the electronic map. As such, ifthe routing acceleration data is used for a version of the electronicmap other than the one for which the routing acceleration data wasgenerated then it is likely that routes will stop being the lowest costroutes.

The pre-processing divides nodes 500 of the electronic map (i.e. theintersections between vectors or in other words nodes are connected byvectors) between a plurality of regions and as such, any electronic mapis divided into a known number of regions—for example N. The regions (ofnumber N), are shown by the dotted lines in FIG. 5, are created each ofwhich contain a plurality of nodes 500. It will be seen that, in the

Figure, there are five regions shown: A, B, C, D and E. Thus it will beseen that region A contains three nodes 500, region B six nodes 500;region C six nodes 500; region D five nodes 500; and region E six nodes.A typical electronic map would of course contain many more regions,nodes 500 and vectors.

As a next pre-processing step, each road segment (ie vector) within aregion (eg 502) is processed to determine whether it is part of a leastcost route to each of the number of regions (N) within the electronicmap and a bit vector is generated (the least cost assessment). Thus, thebit vector, for each road segment 502 within a region A-E, comprises abit for each navigable segment within a region. That is the bit vectorcomprises N−1 bits (1 for each region less the region in question) whichare either set to 0 or 1 depending on whether that route forms part ofthe shortest route to the region represented by the bit. Someembodiments, may add additional bits to provide further information suchas headers, and the like.

The skilled person will appreciate that in this sense the least costroute can be determined against a number of different cost criteria. Forexample the least cost may be judged against any of the followingcriterion: shortest distance; shortest travel time; least expensive (interms of environmental impact); least petrol used; least CO₂ generated,etc. In the current embodiment the least cost is judged against theshortest travel time.

An example of how some embodiments of the invention may store therouting acceleration data is shown in FIG. 6. Each row of FIG. 6comprises a bit vector which has been generated for a vector (ie roadsegment) and it will be seen that each bit vector comprises threecolumns: a leftmost column 600 containing an identity number for thenode at the start of the vector under consideration; a second column 602containing the identity number for the node at the end of the vectorunder consideration and a third column 604 containing the bit vector forthat vector. Thus, it will be seen that each vector is identified by twonodes, one at each end thereof and it will be understood that in thisembodiment, each node within the electronic map under consideration isgiven an identity number.

Some embodiments of the invention may allow users of the electronic mapto highlight errors within that electronic map. In particular, it may bepossible for a user to mark road segment as blocked (ie to indicate thata vector is blocked) and this would have the same effect on traffic flowas a traffic incident. As such, data representing a blocked road segmentmay be considered in the same manner as data detailing a trafficincident.

Alternative, or additional embodiments may allow a user may be able toindicate that a road has become unblocked, a new road has been created,or the like, any of which may be thought of as creating a new vectorwithin the electronic map. Typically, because the routing accelerationdata, as shown in FIG. 6, is generated by pre-processing such newvectors would not be considered by routing methods which utilise therouting acceleration data since the routing acceleration data would notrefer to the new vectors.

A navigation device is able to utilise the routing acceleration dataexemplified in FIG. 6 when it calculates a route between origin anddestination nodes (ie positions). In particular, when the A* method isbeing processed, exploration of the electronic map is constrained toonly consider a road sub network that defines roads on a lowest cost(according to a predetermined criteria) route to the destination asidentified by the routing acceleration data; it having been previouslydetermined by the pre-processing that that road segments were part of alowest cost route to a given area containing the destination.

FIG. 7 exemplifies how the A* search method and the routing accelerationdata exemplified in FIG. 6 are combined in an embodiment of theinvention.

FIG. 14 outlines a flowchart which outlines steps discussed in relationto FIGS. 6 to 13. The steps of the flowchart use reference numbers inthe series 14xx.

It is known that traffic conditions on a road network can effect, oftenseriously, the time that it takes to drive along a road. As such, it isknown for navigation devices to take into account delays due to traffic(including accidents, etc) when they are calculating the lowest costroute between an origin and a destination. It will be appreciated, forexample, that if the criterion being used to determine the lowest costis travel time then the route can be affected by traffic conditions.

Embodiments of the invention apply a predetermined threshold around theorigin position and only consider traffic conditions within thatpredetermined threshold thereby reducing the processing burden ofconsidering traffic over a wide geographic area.

Referring to FIG. 7 which shows a portion of a electronic map 700,having marked thereon a rectangle C highlighting an area in which delaydata is considered and this rectangle C encloses an ellipse 702. Therectangle may be thought of as being fitted to the ellipse once theellipse has been generated. It will be seen from the Figure that therectangle C is arranged to be the smallest rectangle that can fit aroundthe ellipse. The bounding rectangle may be horizontally and verticallyaligned (i.e. no rotation).

The ellipse 702 is positioned such that a first focus point of theellipse F1 is positioned at the origin position (often the startposition of a vehicle for a journey) and the second focus point of theellipse F2 is positioned on a straight line 704 between the first focuspoint F1 and the destination position 706. The distance from the firstfocus point F1 to the intersection of the ellipse 702 (ie the dimensionsof the ellipse) and the line 704 (ie point 708/the boundary of theellipse) is set to be the distance that could be travelled, at a seconddriving speed, in roughly 40 minutes in what may be thought of as a bestcase scenario. In this sense, best case scenario refers to the situationin which we can drive the fastest (no delays) and as a consequence wecould travel the longest distance. For example, at a 120 km/h speed theresulting distance would be 80 km. In reality the reachable distance in40 min will be smaller but the purpose of the bounding area is to coverall possible cases (or at least substantially all cases).

This best case scenario distance is represented by distance B on FIG. 7.The distance from the first focus point F1 to the other intersection ofthe ellipse 702 and the line 704 is consequently roughly 30 km (iedistance A in FIG. 7). The distance 30 km is selected to cover a cityring behind the origin position F1 that could belong to an optimal routeas determined by the first routing method. Each of the 30 km and the 80km are quoted in terms related to the electronic map with which thepredetermined threshold is being used. Creation of the ellipse 702 andrectangle C is shown at step 1400.

Other embodiments of the invention may use a different distance for thedistance A. For example, the distance A may be substantially any of thefollowing distances: 10 km; 15 km; 20 km; 25 km; 35 km; 40 km; 45 km; 50km; or the like. The selection of the distance for A may depend on thearea covered by the electronic map and may be selected on a country bycountry basis, or the like.

Other embodiments might use other time values (such as roughly any ofthe following number of minutes: 10, 15, 20, 25, 30, 35, 45, 50, 60, 70,or more). However, 40 minutes has been selected because traffic problemstypically have a life-span smaller than 30 minutes and the addition of afurther 10 minutes to this value provides a margin of safety. As such,with the predetermined threshold set to be equivalent to a 40 min traveltime traffic problems beyond the predetermined threshold are likely tohave gone away before a vehicle reaches the incident and as such cansafely be ignored from the routing from the origin position F1 to thedestination position 706.

Some embodiments of the invention may be set to treat road closures in adifferent manner since these typically do not introduce any delay butare rather road stretches to be avoided completely in the searchprocess. As such, some embodiments of the invention may remove suchclosed roads from consideration.

Delay data is obtained (step 1402) from a known source (i.e. for exampleprocessed data from a traffic info server) and the next step ofembodiments of the invention is to utilise the delay data with apredetermined threshold described below and this is described furtherwith reference to FIG. 8. Typically the delay data provides informationon delays caused by traffic incidents (ie traffic jams and the like) butdelay data may, in some embodiments, provide information on delaysarising from any reason on vectors of the electronic map. A delay may bethought of as a reduction in the average speed along that vector,perhaps compared to the best-case driving conditions discussed above.Driving speed, for a best-case scenario, for a given vector may be heldwithin the electronic map.

In the example being given, four traffic jams 800,802,804,806 existwithin the area covered by the electronic map 700. A bounding rectangle(eg 808) is placed around the traffic incident which is typically thesmallest rectangle which can contain all the affected road segments thatare related to the corresponding traffic incident. As discussed above,the term traffic incident is also intended to include road segments (ievectors) which have been marked as blocked by a user of the electronicmap (whether that be the user of a particular navigation device oranother user which has been identified by a technology such as MapShare™). A traffic incident may cover partially or completely a givenroad line.

Next the method determines (step 1404) whether there is an intersectionbetween any of the bounding rectangles 808 associated with a traffic jam800-806 and the area covered by the rectangle C (for which delay data isobtained). If there is an intersection then the intersected trafficincident is taken into consideration for routing on the journey from thefirst focus of the ellipse F1 to the destination position 706. Thus, inthe example of FIG. 8 traffic jams 800, 802 and 806 are all consideredsince these intersect with the rectangle c whereas traffic jam 804 isnot considered since it falls beyond the extent of the rectangle c.

Once the traffic which should be considered has been identified, themethod can proceed to calculate a route from the origin position (ie thefocus F1 of the ellipse) to toward destination position 706 and thiscalculation is based upon driving time.

Thus, an A* search is initiated from the origin position F1 and thedriving time is tracked. The use of the A* search utilises a firstrouting method which is used up to a predetermined threshold and thisfirst routing method takes into account delays provided by the delaydata. Once the total driving time to a point has reached 40 minutes (iethe predetermined threshold) then the A* methodology is no longer solelyused and the routing acceleration data described in relation to FIG. 6is also used. Thus, the transition from the first routing method to asecond routing method occurs at a distance that can be travelled withina predetermined driving time. The A* search is represented at step 1406.

Because the transition from A* methodology to include routingacceleration data is based upon driving time, which is in turninfluenced by driving conditions, then there is no fixed distance fromthe origin position F1 for the transition to occur. This distance can berepresented by an ellipse 900 as shown in FIG. 9 which it will be seenis less, perhaps significantly, than the distance set by the rectangle Cdiscussed above since the rectangle C was set utilising best-casedriving conditions.

As such, the ellipse 900 in FIG. 9 is the actual reachable search areawithin the given 40 min in a real situation while the larger rectangle Cis the bounding rectangle of the ellipse assuming no delay (max possiblespeed values considered); ie the area for which delay data is obtained.During this time the vehicle is assumed to be travelling at a firstspeed which is less than the second speed discussed above.

Thus, the rectangle C is used to select the traffic incidents ofrelevance and should cover the best case, or in other words the largestpossible area when there is no delay. The ellipse 900 is used to set thetransition from A* routing to routing using the search accelerationdata.

The skilled person will appreciate that the first and/or second drivingspeeds need not be fixed for a route and will typically vary from vectorto vector along a route.

The transition between the A* methodology to use of acceleration dataoccurs at what may be thought of as a traffic horizon; ie an horizonbeyond which traffic is no longer considered (represented by step 1408).

As discussed above, it is possible for a user (whether that be the userof a particular navigation device or another user which has beenidentified by a technology such as Map Share™) to indicate that thereare new vectors within the electronic map (ie a vector which was notpreviously part of the electronic map). However, because the routingacceleration data is generated by pre-processing those new vectors wouldnot be considered by the second routing method in the generation of thesecond portion of the route 1004. As such, embodiments of the inventionwhich allow new vectors to be added to the electronic map may amend therouting acceleration data to reflect that the new vector is part of thelowest cost route as indicated by the routing acceleration data to eachregion of the map. That is the row for the, or each, new vector would beset so that all of the bits for that vector would be set to ‘1’indicating that the vector was part of the lowest cost route to eachregion of the electronic map. The skilled person will appreciate thatthis is not actually the case but will also appreciate that setting thebits in this manner will cause the second routing method to consider thenew vector when it generates the second portion of the route 1004.

The skilled person will appreciate that the method of setting the bitsof the bit vector representing the new vector to ‘1’ is applicable toany method which utilises the rouging acceleration data and not simplyembodiments which utilise the second routing method after apredetermined threshold. For example, it is of course possible togenerate a route between an origin position and a destination positionutilising the search acceleration data for substantially the entireroute.

FIG. 10 shows a route 1000 which has been plotted from the originposition F1 to the destination position 706. It can be seen from thenature of the line (ie dashed vs non-dashed) whether the route has beengenerated considering traffic (ie the dashed line which may be thoughtof as a first portion 1002 of the route) vs generated withoutconsidering traffic using the acceleration data (ie the non-dashed linewhich may be thought of as a second portion 1004 of the route). It willbe seen that the transition between no-traffic and traffic occurs at theintersection 1006 T of the route with the ellipse 900. The transition(1006/T) may be termed a traffic horizon.

FIG. 11 shows an example of a display which may be made upon the displayscreen 206 of the navigation device 200 situated within a vehicle 1100.The skilled person will appreciate from the above that the delays due totraffic (which are exemplified by the rectangle 1102) will only be shownup to the traffic horizon 1104.

In some embodiments, if the traffic horizon 1104 intersects with atraffic incident 1102, as is the case in FIG. 11, then the traffichorizon 1104 may be extended out to the next electronic map node beyondthe end of the traffic incident 1102; ie node 1106.

Some embodiments of the invention may use electronic maps which havespeed data associated with vectors thereof. In particular, someembodiments may use electronic maps having time dependent speed dataassociated with the vectors thereof. That is, it will be appreciatedthat the average speed along a gives section of road (as represented bya vector in the electronic map) will varying according to the time ofday; for example rush hour traffic is much slower than at 3 am in themorning.

Thus, the actual travel time (A) for a journey can be given by thefollowing equation:

A=F+T+I

where

F=Free Flow Travel Time—time to make the journey in optimal travelconditions.

T=Travel Delays—sum of all traffic delays (not that the traffic delay ona particular road is defined as (time to travel the road given theincident) minus (time to travel the road under free flow conditions).

I=Sum of all delays due to time dependent speed data delays which isdefined as (time to travel the road given the time dependent speed data)minus (time to travel the route under free flow speed).

In embodiments of the invention, T in the above equation will onlyinclude traffic delays up to the traffic horizon 1104; ie the transitionpoint between A* routing and routing using the routing accelerationdata.

In some embodiments, the speed data associated with vectors of theelectronic map may comprise measured speed values for the road segmentrepresented by the vector. As such, such measured speed data provideswhat may be thought of as historical delays which will be considered forvectors of the route for which such speed data is available (which maytypically be substantially all vectors) unless traffic data (ie delaydata) is available for a given vector.

The navigation device 200, as is known in the art, allows a user todisplay a route summary on the display screen 206. Some embodiments ofthe invention may allow a user to see the traffic delays (ie trafficincidents) within this list. Typically the traffic delays in this listare displayed up to the traffic horizon 1104. However, the skilledperson will appreciate that stopping the display of the traffic delaysat the traffic horizon 1104 is an implementation choice and otherembodiments may list traffic delays beyond the traffic horizon 1104.

Alternatively, or additionally embodiments may provide a display, suchas an incident display, which allows traffic delays/incidents to beviewed. Such a view may show all of the incidents of which thenavigation device 200 is aware rather than just those up to the traffichorizon 1104. Again, other embodiments may simply list traffic delays upto the traffic horizon 1104.

FIGS. 12 and 13 show how the traffic horizon 1104 may be re-evaluated asa vehicle 1200 drives (ie traverses). FIG. 12 shows that as the vehiclemoves from position 1200 a, through the positions 1200 b and 1200 c, tothe position 1200 d (ie the destination (706) that the horizonrespectively exists at positions 1104 a, 1104 b, 1104 c and 1104 d.

Some embodiments of the invention do not make this re-evaluation on acontinuous basis (although this would be possible whilst being processorintensive) but update the traffic horizon when the vehicle 1200 movesbeyond a node within the route along which the vehicle is beingdirected. Thus, it will be seen that in FIG. 12 a node is shown atvehicle positions 1200 a, 1200 b, 1200 c and 1200 d to signify there-calculation of the traffic horizon 1104 as the vehicle moves beyondthat node.

Moreover, it will be appreciated that traffic incidents change on acontinuous basis and as such, the traffic incidents are likely to comeand go as the vehicle moves between the positions 1200 a and 1200 d. Assuch, traffic updates may be received whilst the vehicle is movingtoward the destination 706 (ie position 1200 d). Some embodiments of theinvention may be arranged to update the route using traffic updates, maybe when the traffic update is received.

Thus, on the arrival of a traffic update then a route may be re-planned.The skilled person will appreciate that a route may be re-planned for anumber of other reasons (for example deviation from a route, userchange, etc). However, whatever the reason for the cause of the update,some embodiments of the invention are arranged to recalculate theellipse 702 described above such that the focus F1 is based at thecurrent position of the vehicle. This is as shown in FIG. 13 where it isseen that 4 recalculations 1300, 1302, 1304 and 1306 can be seen. Itwill be seen that the flow chart shown in FIG. 14 loops back to thebeginning if the route is to be recalculated (step 1410).

1. A computerised method of generating a route from an origin positionto a destination position across an electronic map comprising aplurality of vectors representing segments of a navigable route in thearea covered by the electronic map, the method comprising: obtainingdelay data indicating delays on vectors within an area covered by theelectronic map; calculating a first portion of a route, from an originposition toward the destination position, using a first routing methodup to a predetermined threshold from the origin position, such that thefirst routing method uses the delay data so that the first portion ofthe route takes into account delays; and calculating a second portion ofthe route beyond the predetermined threshold to the destination positionusing a second routing method to further calculate the route to thedestination position.
 2. The method according to claim 1 wherein thesecond routing method does not use delay data.
 3. The method accordingto claim 1 wherein the second routing method uses routing accelerationdata which indicates vectors within the electronic map which form partof a lowest cost route.
 4. The method according to claim 1 comprisingsetting the predetermined threshold up to which delay data is consideredat the distance that can be travelled within a predetermined drivingtime.
 5. The method according to claim 1 comprising using apredetermined shape to determine the area in which the delay data isobtained.
 6. The method according to claim 5 wherein the predeterminedshape is an ellipse, and wherein the origin position is at a first focusof the ellipse.
 7. The method according to claim 6 comprising arrangingthe dimensions of the ellipse such that the distance from the firstfocus, through the second focus, to the boundary of the ellipse is equalin distance to the distance that a vehicle could travel within apredetermined driving time.
 8. The method according to claim 5comprising subsequently fitting a shape that can be tessellated aroundthe predetermined shape.
 9. The method according to claim 8 wherein theshape that can be tessellated is a rectangle.
 10. The method accordingto claim 8 comprising forming a shape around areas covered by delays,and subsequently determining whether the shape around a delay intersectsthe shape formed around the predetermined shape, and utilising delaydata relating to any incident in which an intersection occurs.
 11. Themethod according to claim 1 wherein the A* method is used as the firstrouting method.
 12. The method according to claim 1 comprisingrecalculating the route if parameters used to generate the originalroute should change.
 13. A navigation device which is arranged togenerate a route from an origin position to a destination positionacross an electronic map accessible thereby and comprising a pluralityof vectors representing segments of a navigable route in the areacovered by the electronic map wherein the device is arranged to: obtaindelay data indicating delays on vectors within an area covered by theelectronic map; calculate a first portion of a route from the originposition toward the destination position using a first routing method upto a predetermined threshold from the origin position wherein the firstrouting method uses the delay data so that the first portion of theroute takes into account delays identified by the delay data; andcalculate a second portion of the route beyond the predeterminedthreshold to the destination position using a second routing method tofurther calculate the route to the destination position.
 14. Anavigation device according to claim 13 which is a Portable NavigationDevice (PND).
 15. A navigation device according to claim 13 in which thesecond routing method does not use delay data, and in which the secondrouting method may use routing acceleration data which indicates vectorswithin the electronic map which form part of a lowest cost route andwherein the method may set the predetermined threshold up to which delaydata is considered at the distance that can be travelled within apredetermined driving time.
 15. The navigation device according to claim13 wherein the second routing method does not use delay data.
 16. Thenavigation device according to claim 13 wherein the second routingmethod uses routing acceleration data which indicates vectors within theelectronic map which form part of a lowest cost route.
 17. Thenavigation device according to claim 13 wherein the device is arrangedto set the predetermined threshold up to which delay data is consideredat the distance that can be travelled within a predetermined drivingtime.
 18. A system arranged to generate a route from an origin positionto a destination position across an electronic map comprising aplurality of vectors representing segments of a navigable route in thearea covered by the electronic map, wherein the system comprises: atleast one server arranged to generate delay data indicating delays onvectors within the area covered by the electronic map; and at least onenavigation device according to claim 13 arranged to receive the delaydata for an area covered by the map.
 19. A non-transitory machinereadable medium containing instructions which when read onto at leastone machine cause that machine to perform to the method according toclaim 1.